بسم الله الرحمن الرحيم

 

عدت لكم للمره الرابعه في الدرس الرابع للأكتف اسكين ActiveSkin 4.3

 

موضوع الدرس:

1-    كيفية التحكم في الانيمشن من خلال الاكواد في الفجوال بيزك"  تكمله للدرس الثالث "

2-    كيفية التحكم في ادوات الاكتف اسكين من خلال الاكواد في الفجوال بيزك مثل الـ

Buttons – Freeform skin – State plasma - Skin Scrollbar - Skin Radio Object

3-    ادراج صوت يمكن تشغله في اي وقت مع اي اداه مثلا : صوت تكه عند الضغط على زر.

 

اولا: كيفية التحكم في الانيمشن:

سبق وتكلمت عن كيفية عمل انيماشن في الاكتف اسكين وهذا في الدرس الثالث , ولكن كيف لي ان اتحكم في هذه الحركه او الانيمشن من خلال برنامجي .

مثلا عندي ليبل "Text1" يدخل فيه رقم من 1 الى 10 ثم الضغط على زر اريد ان اذا كان الرقم الذي تم ادخاله  من 1 الى 5 يظهر لي حركه وهي سبق تصميمها في الاكتف اسكين واذا كان الرقم من 6 الى 10 يظهر لي حركه اخرى اي انيميشن اخرى وهي ايضا سبق تصميمها في الاكتف اسكين  .

    هذا مثال بسيط حتي يسهل الفهم .

   الخطوات:

1-              ابدأ مشروع جديد في الاكتف اسكين.

2-              قم بتصميم  الانيماشن الذي تريدها . مثلا على التطبيق بتاع الدرس الثالث وهو  اخراج الـزر  و ادخاله مره اخرى .

3-              كما لاحظنا اننا قمنا بتسمية الانيماشن الاولى وهي خروج الزر باسم " A1 "  والثانية وهي دخول الزر الثاني باسم " A2 " كما هو موضح في الشكل رقم "1"

الشكل رقم "1"

اذاً عندما نريد ان نتحكم في الفجوال بيزك في هذه الحركه ننادي عليها في الفي بي عند كتابة الكود باسمها كما تعودتم مع اي اداه ولاكن باستسنى ولابد ان تكزو تركيزا قويا لانه صعبه الى حدا ما في المره الاولى .

بعد كما تعودنا بربط الفي بي بالاكتف اسكين وكتابة الشفره المخصصه لذلك  

نقوم بادراج "Textbox" ونسميها بـ > "Text1" و زر  Command Button"" وسميها " Command1 " نضغط كلكتين ونكتب حدث الـ "Click" هذه الشفره :

 

1:

Dim Aim As Boolean

هنا قمت بتعريف متغير الانيميشن لان هناك اكثر من حركه .

2:

Dim Num_T As Single

هنا قمت بتعريف متغير للرقم الذي سوف يتم ادخاله في التكيست

3:

Num_T = Text1.Text

هنا قمت بمساوات المتغير بالتكست

4:

Select Case Num_T

هنا قمت باستخدام قاعدة " Select Case " وهي قاعدة شرط .

5:

Case 0 To 5

قولت له اذا كان الرقم المدخل من 0 الى 1  ,,

6:

Aim = True: Skin1.StartAnimation hWnd, "a2"

ينظرالى قسم الانيماشين يقوم بعمل تشغيل للانيماشن المسماه ب"A2" وهي خروج الزر.

7:

Case 6 To 10

قولت له اذا كان الرقم المدخل من 6 الى 10  ,,

8:

Aim = True: Skin1.StartAnimation hWnd, "a1"

ينظرالى قسم الانيماشين يقوم بعمل تشغيل للانيماشن المسماه ب"A1" وهي دخول الزر.

9:

End Select

قمت بانهاء قاعدة " Select Case"

10:

End Sub

 

 

وهذه الشفره بدون شرح

 

Private Sub Command1_Click()

 

Dim Aim As Boolean

Dim Num_T As Single

 

Num_T = Text1.Text

 

 Select Case Num_T

    Case 0 To 5

     Aim = True: Skin1.StartAnimation hWnd, "a2"

    Case 6 To 10

     Aim = True: Skin1.StartAnimation hWnd, "a1"

 End Select

 

End Sub

 

ملحوظه : لا تستعجبوا اخواني المتقدمين ان طريقة الشرح هذه حتى تتناسب مع جميع المستويات .

 

وبهذه الطريقه تستطيع التحكم في اي انيماشن قمت بعمله .

ملحوظه : اريد اضافة شيء وهو كيف يمكنني اخفاء اي اداه ادرجتها في الاكتف اسكين او اظهارها اي خاصية الـ "Visible"

O. Visible = False  

O. Visible = True

نقوم بعمل 2 انيماشن.

الاولى تذهب الى شريط الخصائص ومن خاصية الـ "Visual" نشيل علامة صح من على " Visible " اي سوف تكون هذه الحركه عند طلبي لها تخفي الاداه .

والثانية تذهب الى شريط الخصائص ومن خاصية الـ "Visual" نضع  علامة صح على " Visible " اي سوف تكون هذه الحركه عند طلبي لها تظهر الاداه .

ويكون ذلك بنفس الطريقه السابق شرحها.

 

ثانياً: التحكم في ادوات الاكتف:

اود في بادئ الامر التوضيح في ماذا اقصد ؟

 

مثلا قمت بادراج " SkinStatic " من نوع الليبول " Label " حيث ان Label الاكتيف اسكين له تاثيرات في الكلام اي عند ادخال الكلام له يكون مثلا ثلاثي الابعاد او يكون مثلا له ظل الخ حسب ما تقوم بضبط خاصية " Text Style "

 

فكيف يمكنني ادراج كلام فيه وتغيره كما اريد ؟

هنا يوجد وقفه وهي انك اذا اردت ليبول الاكتف يكون للعرض فقط اي لا تغير الكلام لمكتوب فيه فلك ان تضعه بمفرده ولاكن اذا اردت التغير فيه اي تغير ال الكلام المكتوب فيه لابد ان يصحبها خلفيه وهذه الخلفيه اداه من ادوات الاكتف اسكين وتدعى بـ " Skin Plasma  " وهي عباره عن خلفيه شفافه لها تاثيرات عديده يمكن تغيرها  حتى لا اتوغل في هذا الموضوع نرجع الى كلامنا فكيف يمكننا تغير ليبل الاكتف اسكين ؟

 

   الخطوات: تكمله على التطبيق السابق .

1- اضغط كليك يمين على " Objects " ثم اختار من القائمه  

Create Object  >>> Windowless Controls >> SkinStatic

 

سوف تدرج لنا بالاسم الافتراضي لها وهو SkinStatic Object نغير الاسم الى "LT1" ثم بعد ذلك نضغط كليك يمين على "LT1" وهو الليبل بعد تسميته ثم نختار ,,

Create Object  >>> Windowless Controls >> SkinPlasma

 

سوف يدرج بالاسم الافتراضي لها وهو "SkinPlasma Object " غيره الى الاسم ال "P_T " سيكون الشكل النهائي كما هو موضح امامك

أذهب الي خصائص الخصائص ستجد خاصيه خاصه بيه تدعى Caption  اكت فيها اي نص ثم قم بالحفظ .

نذهب الى الفيجوال بيزك مع علمنا ان الليبل هو عباره عن اداه في الاكتف اسكين تدعى " SkinStatic "

نذهب الي اداة     "Text1" ثم نضغط كلكتين ونكتب في حدث الـ Change هذا الكود :

1:

 

Dim IN_T As SkinStatic

هنا عرفت متغير ل خصائص اداة الليبل " SkinStatic "

2:

Set IN_T = Skin1.GetSkinnedWindow(hWnd).FindObject("LT1")

هنا يجد الخصائص لـالابجيكت الذي يدعى "LT1"

3:

  IN_T.SetCaption Text1

هنا سويت ليبل الاكتف اسكين بالتكيست

 

وهذه الشفره بدون شرح

Private Sub Text1_Change()

Dim IN_T As SkinStatic

    Set IN_T = Skin1.GetSkinnedWindow(hWnd).FindObject("LT1")

    IN_T.SetCaption Text1

End Sub

ثالثاً: ادراج صوت للادوات:

هل احد يتزكر كيفيت ادراج حركه عند حدث معين فسوف اوضح فكرتي باني اريد عمل زر عند الضغط عليه يظهر لي صوت تكه او اي صوت اخر حسب ما قمت بادخاله .

 

الخطوات:

1-    سوق تجد في القائمه اليسرى قسم يسمى بالـ "Sound" وهذا القص يضم كل ما يتم الادراج له من ميديا ساوند اي صوت ولابد ان يكون المدخل له صوت او ملف صوتي بامتداد "*.Wav" .

2-    اضغط كليك يمين واختار "Lade Sound"  ثم ادرج الساوند او الملف الصوتي سوف يدرج لك بنفس الاسم المسمى به

3-    قف بالماوس على الزر ومن قائمة الخاصه به اختر "MouseClick" سوف يظهر لك مربع حوار تجد فيه مسمى الصوت اختاره ثم اضغط OK  .

جرب وادعيلي

وبهذا اكون انتهيت بشرح الدرس الرابع ......

 

وانشاء الله يكون موضوع الدرس القادم شرح بالتفصيل كل اداه من ادوات الاكتف اسكين باهم خصائصها .